﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using jQueryAir.Utils;

namespace jQueryAir.DataAccess
{
    using System.Data;

    using Microsoft.Practices.EnterpriseLibrary.Data;

    using jQueryAir.BusinessEntity;

    public class ProyectoDAL : Singleton<ProyectoDAL>
    {
        static DatabaseProviderFactory factory = new DatabaseProviderFactory();
        static Database BaseDatos = factory.Create("ConnectionString");

        public IList<Proyecto> consultarProyectos(Proyecto proyecto)
        {
            var proyectos = new List<Proyecto>();
            var comando = BaseDatos.GetStoredProcCommand("InmListarProyectos");
            BaseDatos.AddInParameter(comando, "IdEmpresa", DbType.Int32, proyecto.IdEmpresa);
            BaseDatos.AddInParameter(comando, "IdProyecto", DbType.Int32, proyecto.IdProyecto);

            using (var lector = BaseDatos.ExecuteReader(comando))
            {
                while (lector.Read())
                {
                    proyectos.Add(new Proyecto
                    {
                        IdProyecto = lector.GetInt32(lector.GetOrdinal("IdProyecto")),
                        NombreProyecto = lector.GetString(lector.GetOrdinal("Proyecto")),
                        Direccion = lector.GetString(lector.GetOrdinal("Direccion")),
                        Imagen = lector.GetString(lector.GetOrdinal("Imagen")),
                        Ubicacion = lector.GetString(lector.GetOrdinal("Ubicacion")),
                        Marcador = lector.GetString(lector.GetOrdinal("Marcador"))
                    });
                }
            }
            comando.Dispose();
            return proyectos;
        }
    }
}
